import Vue from 'vue'
import Router from 'vue-router'
import Login from '../components/login.vue'
import Home from '../components/Home.vue'
import Welcome from '../components/Welcome.vue'
import Users from '../components/user/Users.vue'
import Rights from '../components/power/Rights.vue'
import Roles from '../components/power/Roles.vue'
import Cate from '../components/goods/Cate.vue'
import Params from '../components/goods/params.vue'
import GoodsList from '../components/goods/List.vue'
import Add from '../components/goods/Add.vue'
import Verify from '../components/goods/Verify.vue'
import VerifyInfo from '../components/goods/VerifyInfo.vue'
import Comment from '../components/goods/Comment.vue'
import CommentInfo from '../components/goods/CommentInfo.vue'
import OrderList from '../components/order/List.vue'
import StoreVerify from '../components/user/StoreVerify.vue'


Vue.use(Router)

const router = new Router({
	routes: [
		{ path: '/', redirect: '/login' },
		{ path: '/login', component: Login },
		{
			path: '/home',
			component: Home,
			redirect: '/Welcome',
			children: [
				{ path: '/Welcome', component: Welcome },
				{ path: '/users', component: Users },
				{ path: '/rights', component: Rights },
				{ path: '/roles', component: Roles },
				{ path: '/productCategories', component: Cate },
				{ path: '/speParameters', component: Params },
				{ path: '/productList', component: GoodsList },
				{ path: '/addProduct', component: Add, name: 'addProduct' },  //添加商品
				{ path: '/addProduct/:id', component: Add, name: 'editProduct' },//修改商品
				{ path: '/productAudit', component: Verify },
				{ path: '/productInfo/:id', component: VerifyInfo, name: 'verifyInfo' },
				{ path: '/productEvaluation', component: Comment },
				{ path: '/commentInfo/:id', component: CommentInfo, name: 'commentInfo' },
				{
					path: '/order/list',
					component: OrderList
				 },
				 {
					path:'/order/list/details',
					component: () => import('@/components/order/order_details'),
				}
			]
		}
	]
})


//挂载路由导航守卫
router.beforeEach((to, from, next) => {
	//to 将要访问的路径
	//from 代表从哪个路径跳转而来
	//next 是一个函数，表示放行
	//next（） 放行 next（'/login'） 强制跳转
	if (to.path === '/login') return next();
	//获取token
	const tokenStr = window.sessionStorage.getItem('token')
	//如果没有token跳转到登录页面
	if (!tokenStr) return next('/login')
	next()
})


export default router
